#ifndef __ESP8266_H__
#define __ESP8266_H__

#include <Arduino.h>
#include <ESP8266WiFi.h>
#include <PubSubClient.h>
#include "esp8266_webserver.hpp"
#include <EEPROM.h>

/**
 * ESP8266配置结构体
 */
struct esp_config_t
{
    char wifi_ssid[20];
    char wifi_password[20];
    char mqtt_server[40];
    int mqtt_port = 1883;
    char mqtt_user[20];
    char mqtt_password[20];
    char mqtt_pub_topic[50];        // MQTT发布主题
    char mqtt_sub_topic[50];        // MQTT订阅主题
    int stopped;                    // 设备运行状态
};

void esp_init();                // 初始化函数
void esp_running();             // 主运行函数
void esp_saveconfig();          // 保存配置函数

extern esp_config_t esp_config;

#endif